package org.ifilm.dao;

import java.util.List;

import org.ifilm.model.EquipmentOffer;
import org.ifilm.model.EquipmentPosting;
import org.ifilm.model.JobApplication;
import org.ifilm.model.UserJobPosting;

/**
 * 
 * @author Mustafa Genç
 *
 */
public interface NoticeDao {
	public UserJobPosting createJobPosting(UserJobPosting jobPosting);
	
	public EquipmentPosting createEquipmentPosting(EquipmentPosting equipmentPosting);
	
	public List<UserJobPosting> listJobPostings();
	
	public UserJobPosting getUserJobPosting(Long id);
	
	public EquipmentPosting getUserEquipmentPosting(Long id);
	
	public JobApplication createJobApplication(JobApplication jobApplication);
	
	public EquipmentOffer createEquipmentOffer(EquipmentOffer equipmentOffer);
	
	public List<JobApplication> getJobApplications(Long userId);
	
	public void editJobPosting(UserJobPosting jobPosting);
	
	public void updateJobApplication(JobApplication jobApplication);

	public JobApplication getJobApplicationById(Long jobApplicationId);

	public List<EquipmentOffer> getEquipmentOffers(Long userId);

	public void deleteJobPosting(Long postingId);
	
}